'''
unittest：python自带的单元测试框架

什么是单元测试？
    开发对自己的代码进行测试（自己调用自己的方法，验证是否有问题）
    编码规范：ctrl+alt+l或者command+option+l
单元测试框架
    unittest
    1、保证所有的case跑完
    2、更快更简单的完成校验
    unittest的运行case顺序，是以方法的名字按照ascii码来排序

    按照优先级顺序列举：
    @classmethod
    def setUpClass(cls)->None:

    def setUp(self)-> None:

    def tearDown(self)-> None:



'''
import unittest

def add(a,b):
    return a+b

class AddTest(unittest.TestCase):

    @staticmethod
    def get_user_id():#必须test开头，否则TestCase不会运行该方法
        return 1

    def tearDown(self)-> None:#方法，执行后（tearDown，方法执行后）
        print("tearDown")

    def setUp(self)-> None:#方法，执行前（setUp,方法执行前）
        print("setUp")

    @classmethod
    def setUpClass(cls)-> None:
        print("set up class")

    def test_add_true(self):
        result=add(1,2)
        self.assertEqual(3,result)

    def test_add_false(self):
        result=add(6,2)
        self.assertEqual(5,result)

    def test_add_true4(self):
        result = add(1, 2)
        self.assertEqual(3, result)

    def test_add_true5(self):
        result = add(1, 2)
        self.assertEqual(3, result)

    def test_add_false6(self):
        result = add(1, 2)
        self.assertEqual(5, result)
unittest.main() #如果不加这句话，就代表没有调用,